package com.xncoding.trans.annotate;

import com.xncoding.trans.enums.RedisCacheEnums;

import java.lang.annotation.*;
import java.util.concurrent.TimeUnit;

@Target({ElementType.PARAMETER, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface RedisCache {
    /**
     * 缓存的key
     **/
    String key() default "";
    /**
     * 参数类型
     *
     * @return
     */
    RedisCacheEnums type();
    /**
     * 缓存时长，默认-1表示永久有效
     **/
    int time() default 300;
    /**
     * 缓存时长单位，默认单位秒
     **/
    TimeUnit timeType() default TimeUnit.SECONDS;
}